From abf8e35611d9681dfa8cae3d296b2ac28209be35 Mon Sep 17 00:00:00 2001 From: Raph Levien Date: Thu, 26 Jan 2017 13:12:14 -0800 Subject: [PATCH] Buffer file writing for dep-info Use BufWriter when generating .d files with dep-info, to avoid excessive numbers of write syscalls. --- src/cargo/ops/cargo_rustc/output_depinfo.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/cargo/ops/cargo_rustc/output_depinfo.rs b/src/cargo/ops/cargo_rustc/output_depinfo.rs index add28e023..5ed98eb11 100644 --- a/src/cargo/ops/cargo_rustc/output_depinfo.rs +++ b/src/cargo/ops/cargo_rustc/output_depinfo.rs @@ -1,5 +1,5 @@ use std::collections::HashSet; -use std::io::Write; +use std::io::{Write, BufWriter}; use std::fs::File; use std::path::{Path, PathBuf}; @@ -53,7 +53,7 @@ pub fn output_depinfo<'a, 'b>(context: &mut Context<'a, 'b>, unit: &Unit<'a>) -> if let Some(link_dst) = link_dst { let output_path = link_dst.with_extension("d"); let target_fn = render_filename(link_dst, basedir)?; - let mut outfile = File::create(output_path)?; + let mut outfile = BufWriter::new(File::create(output_path)?); write!(outfile, "{}:", target_fn)?; for dep in &deps { write!(outfile, " {}", render_filename(dep, basedir)?)?; -- 2.30.2